package Map;

import java.util.HashMap;
import java.util.Map;

/**
 * map 集合
 * 查找表
 * Map 体系的结构是一个键值对结构  <key,value  >
 */
public class MapDemo1 {
    public static void main(String[] args) {
        //新建map集合
        Map<String,Integer> map=new HashMap<>();
        map.put("语文",100);
        /*
        * map集合的键不能重复
        * 如果使用重复的key存入新的value，那么put的返回值就是原来的value
         */
        Integer value=map.put("数学",100);
        System.out.println(value);
        map.put("英语",100);
        map.put("化学",100);
        map.put("物理",100);
        map.put("生物",100);
        System.out.println(map);
        Integer value1=map.put("语文",99);
        System.out.println(value1);
        System.out.println(map);

        value= map.get("语文");
        System.out.println(value);
        value= map.get("游戏");
        System.out.println(value);
        //当获取的key不存在时，返回null
        int size= map.size();
        System.out.println(size);
        //一组键值对算是一个长度
        value=map.remove("数学");
        System.out.println(value);//删除某个key时返回被删除的value
        System.out.println(map);
        map.remove(100);
        System.out.println(":::::::::"+map);

        //是否为空isEmpty
        boolean isEmpty= map.isEmpty();
        System.out.println("是否为空map,"+isEmpty);

        //是否包含某个key,containsKey
        boolean ck=map.containsKey("英语");
        System.out.println("是否包含key,"+ck);
        //是否包含某个value,containsValue
        boolean cv=map.containsValue(50);
        System.out.println("是否包含value,"+cv);
        //在比较key和value时都是用equals方法比较的，和集合相同

        //clear 清空map集合
        map.clear();
        System.out.println(map);
        System.out.println(map.isEmpty());




    }
}
